﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HOOMT
{
    class NonFunctionRequirment
    {
        private String nonFunctionType;
        public String NonFunctionType
        {
            get { return nonFunctionType; }
            set { nonFunctionType = value; }
        }

        private String nonFunctionName;
        public String NonFunctionName
        {
            get { return nonFunctionName; }
            set { nonFunctionName = value; }
        }

        private String nonFunctionValue;
        public String NonFunctionValue
        {
            get { return nonFunctionValue; }
            set { nonFunctionValue = value; }
        }
        private String description;
        public String Description
        {
            get { return description; }
            set { description = value; }
        }
        public String id;
        //###################################################################################
        public NonFunctionRequirment(String nonFunctionType, String nonFunctionName, String nonFunctionValue,String description = "")
        {
            this.nonFunctionType = nonFunctionType;
            this.nonFunctionName = nonFunctionName;
            this.nonFunctionValue = nonFunctionValue;
            this.description = description;
            this.id = System.Guid.NewGuid().ToString();
        }

        public NonFunctionRequirment(String nonFunctionType, String nonFunctionName, String nonFunctionValue, String id, String description = "")
        {
            this.nonFunctionType = nonFunctionType;
            this.nonFunctionName = nonFunctionName;
            this.nonFunctionValue = nonFunctionValue;
            this.description = description;
            this.id = id;
        }

        //***********************************************************************************
        public override string ToString()
        {
            return nonFunctionType + "  " + nonFunctionName + "  " + nonFunctionValue + "  " + description;
        }
        public String getShowString()
        {
            String showStr = "";
            switch (nonFunctionType)
            {
                case "Quantifiable":
                    showStr = "+";
                    break;
                case "UnQuantifiable":
                    showStr = "-";
                    break;
                default:
                    showStr = "";
                    break;
            }
            return showStr + "  " + nonFunctionName + "  " + nonFunctionValue;
        }
        //************************************************************************************

    }
}
